package com.frcdi.qms.masterdata.domain;

import com.frcdi.qms.common.annotation.Excel;
import com.frcdi.qms.common.core.domain.BaseEntity;
import com.frcdi.qms.equipment.domain.EquipmentType;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.math.BigDecimal;

/**
 * 方法--项目--步骤对象 md_method_step
 *
 * @author cell
 * @date 2023-10-16
 */
@ApiModel(value = "方法--项目--步骤对象")
public class MethodStep extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 步骤id */
    private Long stepId;

    /** 方法项目id */
    private Long projectId;

    /** 步骤序号 */
    @Excel(name = "步骤序号")
    private Long stepOrder;

    /** 步骤名称 */
    @Excel(name = "步骤名称")
    private String stepName;

    /** 供试品数 */
    @Excel(name = "供试品数")
    private Long sampleNum;

    /** 设备类型 */
    @Excel(name = "设备类型")
    private Long equipmentType;

    /** 测量对象名称 */
    @Excel(name = "测量对象名称")
    private String sampleName;

    /** 测量对象类型 */
    @Excel(name = "描述内容")
    private String describeContent;

    /** 步骤类型（0数值型1描述型） */
    @Excel(name = "步骤类型", readConverterExp = "0=数值型1描述型")
    private String stepType;

    /** 上限 */
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    @Excel(name = "上限")
    private BigDecimal maximum;

    /** 下限 */
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    @Excel(name = "下限")
    private BigDecimal minimum;

    /** 称量单位(单位表) */
    @Excel(name = "称量单位(单位表)")
    private String unitName;

    /** 删除标志（0代表存在 2代表删除） */
    private String delFlag;

    /** 是否参与评估（0不参与1参与） */
    @Excel(name = "是否参与评估", readConverterExp = "0=不参与1参与")
    private String isAppraise;

    /** 设备类型对象 */
    private EquipmentType equipmentTypeEntity;

    public EquipmentType getEquipmentTypeEntity() {
        return equipmentTypeEntity;
    }

    public void setEquipmentTypeEntity(EquipmentType equipmentTypeEntity) {
        this.equipmentTypeEntity = equipmentTypeEntity;
    }

    public void setStepId(Long stepId)
    {
        this.stepId = stepId;
    }

    public Long getStepId()
    {
        return stepId;
    }
    public void setStepOrder(Long stepOrder)
    {
        this.stepOrder = stepOrder;
    }

    public Long getProjectId() {
        return projectId;
    }

    public void setProjectId(Long projectId) {
        this.projectId = projectId;
    }

    public Long getStepOrder()
    {
        return stepOrder;
    }
    public void setStepName(String stepName)
    {
        this.stepName = stepName;
    }

    public String getStepName()
    {
        return stepName;
    }
    public void setSampleNum(Long sampleNum)
    {
        this.sampleNum = sampleNum;
    }

    public Long getSampleNum()
    {
        return sampleNum;
    }
    public void setEquipmentType(Long equipmentType)
    {
        this.equipmentType = equipmentType;
    }

    public Long getEquipmentType()
    {
        return equipmentType;
    }
    public void setSampleName(String sampleName)
    {
        this.sampleName = sampleName;
    }

    public String getSampleName()
    {
        return sampleName;
    }

    public String getDescribeContent() {
        return describeContent;
    }

    public void setDescribeContent(String describeContent) {
        this.describeContent = describeContent;
    }

    public String getStepType() {
        return stepType;
    }

    public void setStepType(String stepType) {
        this.stepType = stepType;
    }

    public BigDecimal getMaximum() {
        return maximum;
    }

    public void setMaximum(BigDecimal maximum) {
        this.maximum = maximum;
    }

    public BigDecimal getMinimum() {
        return minimum;
    }

    public void setMinimum(BigDecimal minimum) {
        this.minimum = minimum;
    }

    public void setUnitName(String unitName)
    {
        this.unitName = unitName;
    }

    public String getUnitName()
    {
        return unitName;
    }
    public void setDelFlag(String delFlag)
    {
        this.delFlag = delFlag;
    }

    public String getDelFlag()
    {
        return delFlag;
    }
    public void setIsAppraise(String isAppraise)
    {
        this.isAppraise = isAppraise;
    }

    public String getIsAppraise()
    {
        return isAppraise;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
            .append("stepId", getStepId())
            .append("peojectId", getProjectId())
            .append("stepOrder", getStepOrder())
            .append("stepName", getStepName())
            .append("sampleNum", getSampleNum())
            .append("equipmentType", getEquipmentType())
            .append("sampleName", getSampleName())
            .append("describeContent", getDescribeContent())
            .append("stepType", getStepType())
            .append("maximum", getMaximum())
            .append("minimum", getMinimum())
            .append("unitName", getUnitName())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("delFlag", getDelFlag())
            .append("isAppraise", getIsAppraise())
            .toString();
    }
}
